From: Stefano Stabellini Date: Thu, 29 Nov 2012 11:28:17 +0000 (+0000) Subject: xen/arm: build as zImage X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~7600 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https://%22%22/%22http:/www.example.com/cgi/%22https:/%22%22?a=commitdiff_plain;h=8b7dd43d8212644448e4828ab1b8eebbda28f891;p=xen.git xen/arm: build as zImage The zImage format is extremely simple: it only consists of a magic number and 2 addresses in a specific position (see http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html#d0e309). Some bootloaders expect a zImage; considering that it doesn't cost us much to build Xen compatible with the format, make it so. Signed-off-by: Stefano Stabellini Acked-by: Tim Deegan Acked-by: Ian Campbell [ ijc -- switch from 7*nop + nop to just 8*nop ] Committed-by: Ian Campbell --- diff --git a/xen/arch/arm/head.S b/xen/arch/arm/head.S index 0d77ee6537..8e2e2845b8 100644 --- a/xen/arch/arm/head.S +++ b/xen/arch/arm/head.S @@ -22,6 +22,8 @@ #include #include +#define ZIMAGE_MAGIC_NUMBER 0x016f2818 + #define PT_PT 0xe7f /* nG=1, AF=1, SH=10, AP=01, NS=1, ATTR=111, T=1, P=1 */ #define PT_MEM 0xe7d /* nG=1, AF=1, SH=10, AP=01, NS=1, ATTR=111, T=0, P=1 */ #define PT_DEV 0xe71 /* nG=1, AF=1, SH=10, AP=01, NS=1, ATTR=100, T=0, P=1 */ @@ -52,6 +54,21 @@ * or the initial pagetable code below will need adjustment. */ .global start start: + + /* zImage magic header, see: + * http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html#d0e309 + */ + .rept 8 + mov r0, r0 + .endr + b past_zImage + + .word ZIMAGE_MAGIC_NUMBER /* Magic numbers to help the loader */ + .word 0x00000000 /* absolute load/run zImage address or + * 0 for PiC */ + .word (_end - start) /* zImage end address */ + +past_zImage: cpsid aif /* Disable all interrupts */ /* Save the bootloader arguments in less-clobberable registers */